<?php

    function lastIndexOf($string,$item){  
    $index=strpos(strrev($string),strrev($item));  
    if ($index){  
        $index=strlen($string)-strlen($item)-$index;  
        return $index;  
    }  
        else  
        return -1;  
    }  

    function getPHPFiles($repertoire, $depth = 0)
    {
        $files = array();
        
        $le_repertoire = opendir($repertoire) or die("Erreur le repertoire $repertoire existe pas");
        while($fichier = @readdir($le_repertoire))
        {

            // enlever les traitements inutile
            if ($fichier == "." || $fichier == "..") continue;


            if(!is_dir($repertoire.'/'.$fichier)):
                $path = explode('/', $repertoire);
                $p = count($path);
                $relative_path = "";
                
                for($i = $p - $depth; $i < $p; $i ++):
                    if($i != $p - 1):
                        $relative_path .= $path[$i] . '/';
                    else:
                        $relative_path .= $path[$i];
                    endif;
                endfor;
                
                $path = empty($relative_path) ? $fichier : $relative_path.'/'.$fichier;
                print "<li> $path (depth = " . $depth . ")</li>";
                $files[count($files)] = $path;
            else:
                $files_other = getPHPFiles($repertoire.'/'.$fichier, ++$depth);
                foreach ($files_other as $file) :
                    $files[count($files)] = $file;
                endforeach;
            endif;
        }
        
        closedir($le_repertoire);
        return $files;
    }
        
?>
